#pragma once
#include "Event.h"
#include "KeyEvent.h"

namespace Fysics
{
	class WindowCloseEvent : public Event
	{
	public:
		WindowCloseEvent()
		{
			AddCategory(EventCategoryGlobal | EventCategoryWindow);
		}
		EVENT_TYPE(WindowClose);
	};

	class WindowKeyPressedEvent : public KeyPressedEvent
	{
	public:
		WindowKeyPressedEvent(int keycode, bool isLongClick)
			: KeyPressedEvent(keycode, isLongClick)
		{
			AddCategory(EventCategoryInput | EventCategoryKeyboard | EventCategoryWindow);
		}
	};

	class WindowKeyReleasedEvent : public KeyReleasedEvent
	{
	public:
		WindowKeyReleasedEvent(int keycode) : KeyReleasedEvent(keycode) 
		{
			AddCategory(EventCategoryInput | EventCategoryKeyboard | EventCategoryWindow);
		}
	};
}